Page({
    /**
     * 页面的初始数据
     */
    data: {
        msg: 'hello'
    },

    onClick() {
        //   获取 data 选项中的数据
        //   console.log(this.msg)
        console.log(this.data.msg)
        //   修改 data 选项中的数据
        //   this.data.msg = 'world'
        this.setData({
            msg: 'world'
        })
    },

    /**
     * 生命周期函数--监听页面加载
     *    options - 页面参数对象
     *    PS: 
     *        1. 一个生命周期内,只会触发一次
     *        2. 类比Vue中 created
     */
    onLoad: function (options) {
        console.log('Log onLoad', options)
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     *    PS: 
     *        1. 类似 Vue 中 mounted [要获取节点相关信息得在这儿获取]
     *        2. 一个生命周期中,只会触发一次
     */
    onReady: function () {
        console.log('Log onReady')
    },

    /**
     * 生命周期函数--监听页面显示
     *    PS:
     *        1. 与应用层级的 show 与 hide 的执行顺序
     *            应用先 show 后页面 show
     *            页面先 hide 后应用 hide
     */
    onShow: function () {
        console.log('Log onShow')
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {
        console.log('Log onHide')
    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {
        console.log('Log onUnload')
    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     *    应用场景: 实现下拉刷新逻辑
     *    PS:
     *        1. 需要启用 enablePullDownRefresh
     *            
     */
    onPullDownRefresh: function () {
        console.log('Log onPullDownRefresh')
    },

    /**
     * 页面上拉触底事件的处理函数
     *    应用场景: 实现上拉加载更多逻辑
     *    PS: 可以配置 onReachBottomDistance 设置距离底部多少时触发,默认值为 50
     */
    onReachBottom: function () {
        console.log('Log onReachBottom')
    },

    /**
     * 用户点击右上角分享, 自定义分享文案
     *    PS:
     *        1. 页面要有分享功能,必须设置 onShareAppMessage 否则分享按钮是禁用的
     *        2. 默认分享的内容: 
     *            标题: 使用当前页面标题
     *            图片: 使用当前页面的截图
     *            链接: 使用当前页面的链接地址
     * 
     *  options:
     *      from: 分享操作来源，menu - 右上角菜单  button - 设置了open-type为share的按钮触发的分享
     *      target: 触发事件的节点，包含有 dataset id offsetLeft offsetTop 等字段
     *              当 from 为 menu 时，该 target 为 undefined
     *      webViewUrl: 如果页面包含有 web-view 组件，则该属性为 web-view 的页面地址
     */
    onShareAppMessage: function (options) {
        console.log('Log options', options)
        // return {
        //     title: '家人们,谁懂啊',
        //     imageUrl: 'https://pic.maizuo.com/usr/movie/2f2566dffd5955d0b960a9ac8946e59c.jpg?x-oss-process=image/quality,Q_70',
        //     path: '/pages/index/index'
        // }

        // 可以配置一个包含有 promise 选项的对象, 会等到 Promise 完成,
        return {
            title: '家人们,谁懂啊',
            imageUrl: 'https://pic.maizuo.com/usr/movie/2f2566dffd5955d0b960a9ac8946e59c.jpg?x-oss-process=image/quality,Q_70',
            path: '/pages/index/index',
            promise: new Promise((resolve) => {
                setTimeout(() => {
                    resolve({
                        title: 'Promise - title'
                    })
                }, 3100)
            })
        }
    },
})